package br.ufrn.sigtcc.util.specification.entidades;

import br.ufrn.sigtcc.model.entidades.Aluno;
import br.ufrn.sigtcc.util.specification.ISpecification;

public class AlunoSpecification  
     implements ISpecification<Aluno> {  
   
     public boolean isSatisfiedBy(Aluno aluno) {  
         if(       
        		 verifyEmpty(aluno) || verifyNull(aluno) ){  
             return false;  
         }  
         return true;  
     }
     
     private boolean verifyNull(Aluno aluno){
    	 if(
    			 aluno == null ||
    			 aluno.getNome() == null ||
    			 aluno.getCpf() == null ||
    			 aluno.getSexo() == null ||
    			 aluno.getDataNascimento() == null ||
    			 aluno.getEmail() == null ||
    			 aluno.getLogin() == null ||
    			 aluno.getSenha() == null ||
    			 aluno.getMatricula() == null )
    	 	{  
    	         return false;  
    	 	}  
    	         return true;  
     }
     
     private boolean verifyEmpty(Aluno aluno){
    	 if(
    			 aluno.getNome().equals("") ||
    			 aluno.getCpf().equals("")||
    			 aluno.getSexo().equals("") ||
    			 aluno.getDataNascimento().equals("") ||
    			 aluno.getEmail().equals("") ||
    			 aluno.getLogin().equals("") ||
    			 aluno.getSenha().equals("") ||
    			 aluno.getMatricula().equals("") )
    	 	{  
    	         return false;  
    	 	}  
    	         return true;  
     }
     
 }  